package com.sky.mapper;

import com.sky.dto.GoodsSalesDTO;
import org.apache.ibatis.annotations.Mapper;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

/**
 * @author 星河一叶Ck
 * @date 2024/10/10
 */

@Mapper
public interface ReportMapper {

    /**
     * 动态根据条件查询营业额
     * @param map
     * @return
     */
    BigDecimal getAmountByTimeAndStatic(Map map);

    /**
     * 动态查询用户量
     * @param map
     * @return
     */
    Integer getUserStatics(Map map);

    /**
     * 动态查询订单数
     * @param map
     * @return
     */
    Integer getOrdersSum(Map map);

    /**
     * 根据指定时间区间统计销售排名
     * @param begin
     * @param end
     * @return
     */
    List<GoodsSalesDTO> getSalesTop10(LocalDateTime begin, LocalDateTime end);
}
